Automated painting system with zero-turn radius robotic base

ABSTRACT

In various embodiments, a zero-turn radius robotic base may comprise a substantially rectangular (e.g., rectangular) base portion that comprises a plurality of wheels. In various embodiments, the plurality of wheels are configured to support the robotic base adjacent a support surface (e.g., the ground, a suitable flooring surface within a building, etc.). In some embodiments, the robotic base comprises a first and second driving wheel and a plurality of stability wheels. In some embodiments, an axis of rotation of the first and the second driving wheel are collinear. In various embodiments, the plurality of stability wheels are spaces apart from the axis of rotation of the first and second driving wheels to provide stability to the robotic base.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to U.S. Provisional Patent ApplicationSer. No. 62/688,240, filed Jun. 21, 2018, entitled, “AUTOMATED PAINTINGSYSTEM WITH ZERO-TURN RADIUS ROBOTIC BASE,” and U.S. Provisional PatentApplication Ser. No. 62/688,230, filed Jun. 21, 2018, entitled,“PIVOTING SPRAY HEAD FOR AUTOMATED PAINTING SYSTEMS,” the disclosures ofwhich are hereby incorporated by reference in their entirety.

BACKGROUND

Painting can be a labor-intensive, costly process. Additionally,traditional painting techniques often result in excessive waste (e.g.,in terms of paint consumption, brushes, etc.) or result in the releaseof potentially hazardous chemicals into the air (e.g., via paintspraying). Accordingly, there is a need for improved systems and methodsthat address these and other needs.

SUMMARY

An autonomous mobile paint spraying robot, in various embodiments,comprises: (A) a wheeled base configured to support the autonomousmobile paint spraying robot adjacent a support surface, wherein thewheeled base comprises: (1) a first drive wheel disposed adjacent acentral portion of the robotic frame, the first drive wheel being spacedapart from a center of rotation of the wheeled base and having a firstaxis of rotation that intersects the center of rotation; (2) a seconddrive wheel disposed adjacent the central portion of the robotic frame,the second drive wheel being spaced apart from the center of rotation ofthe wheeled base and having a second axis of rotation that intersectsthe center of rotation and is collinear with the first axis of rotation;and (3) a plurality of stability wheels disposed about an outer portionof a frame of the wheeled base; (B) a paint sprayer support systemcomprising at least one vertical support, wherein the at least onevertical support comprises: (1) a first vertical support that extendsfrom the wheeled base and is perpendicular to the support surface; and(2) a second vertical support configured to slide relative to the firstvertical support in a telescoping manner; (C) at least one paint sprayeradjacent the at least one vertical support and configured to translatevertically along a track defined by the second vertical support, the atleast one paint sprayer comprising a worm gear drive assembly configuredto adjust an angle of the at least one paint sprayer relative to the atleast one vertical support; and (D) a computer controller configured forcausing the autonomous mobile paint spraying robot to paint a wall bypainting a series of adjacent vertical swaths by activating the at leastone paint sprayer to spray paint along each vertical swath of the seriesof adjacent vertical swaths at a desired speed by causing verticalmotion of the at least one paint sprayer relative to the wheeled baseby: (1) causing the second vertical support to slide vertically relativeto the first vertical support at a first speed to a height thatcorresponds to a height of the wall; (and) causing the at least onesprayer to slide relative to the second vertical support at a secondspeed such that the first speed and second speed are synchronized to thedesired speed and the at least one sprayer travels a linear path from abase of the second vertical support adjacent a base of the wall to a topportion of the second vertical support adjacent a top portion of thewall.

A zero turn-radius robotic base comprising: (A) a substantiallyrectangular base frame; (B) a plurality of stability wheels disposedadjacent an outer face of the substantially rectangular base frame; (C)a first driving wheel disposed at least partially within thesubstantially rectangular frame; and (D) a second driving wheel disposedat least partially within the substantially rectangular frame and spacedapart from the first driving wheel, wherein: (1) the first driving wheelis spaced apart from a center of rotation of the substantiallyrectangular base frame and has a first axis of rotation that intersectsthe center of rotation; (2) the second driving wheel is spaced apartfrom the center of rotation of the substantially rectangular base frameand has a second axis of rotation that intersects the center ofrotation; and (3) the first axis of rotation is substantially collinearwith the second axis of rotation.

BRIEF DESCRIPTION OF THE DRAWINGS

Various embodiments of an automated painting robot are described below.In the course of this description, reference will be made to theaccompanying drawings, which are not necessarily drawn to scale, andwherein:

FIGS. 1A-1B depict a perspective view of an automated mobile paint robot100 according to a particular embodiment.

FIGS. 2A-2B depict the automated mobile paint robot 100 of FIG. 1 withthe paint sprayer in an extended position.

FIG. 3-5 depict a zero-turn radius robotic base according to variousembodiments, which may be used in the context of an automated mobilepaint robot, such as the automated mobile paint robot shown in FIGS. 1A,1B, 2A, and 2B.

FIG. 6 depicts a pivoting spray head according to various embodiments.

FIG. 7 depicts a pivoting spray head according to a particularembodiment mounted to a vertical support (e.g., such as any suitablevertical support depicted in FIGS. 1A, 1B, 2A, and/or 2B).

FIG. 8 depicts operations performed by a computer controller or othersystem or control system in order to control the operation of thepivoting spray head according to various embodiments.

FIG. 9 depicts an illustrative example of the application of paint alonga vertical swath using a pivoting spray head as described herein.

FIG. 10 depicts a robot control system 300 according to variousembodiments.

FIG. 11 is a schematic diagram of a computer (such as the robotpositioning server 310, or one or more remote computing devices 330)that is suitable for use in various embodiments of the robot controlsystem 300 shown in FIG. 10 .

DETAILED DESCRIPTION OF VARIOUS EMBODIMENTS

Various embodiments will now be described in greater detail. It shouldbe understood that the invention may be embodied in many different formsand should not be construed as limited to the embodiments set forthherein. Rather, these embodiments are provided so that this disclosurewill be thorough and complete, and will fully convey the scope of theinvention to those skilled in the art. Like numbers refer to likeelements throughout.

Overview

An automated mobile paint robot (such as the automated mobile paintrobot shown in FIGS. 1A, 1B, 2A, and 2B) may be configured to paint awall of a room by causing a paint sprayer 156 to spray a series ofdiscrete, vertical swaths having a defined width along an entire lengthof the wall. The automated mobile paint robot may, for example, beconfigured to: (1) cause the sprayer to spray a first complete verticalswath of the wall (e.g., from floor to ceiling or from ceiling tofloor); (2) after spraying the first vertical swath of the wall, causethe automated mobile paint robot to drive one swath width along the wall(e.g., while maintaining a substantially fixed distance from the wall);(3) cause the sprayer to spray a second complete vertical swath of thewall (e.g., from floor to ceiling or from ceiling to floor) that isadjacent to (e.g., abutting, at least partially overlapping, etc.) thefirst swath; and (4) so on until the automated mobile paint robot hassprayed a sufficient number of adjacent vertical swaths such that theentire wall has been painted.

As may be understood from FIGS. 1A, 1B, 2A, and 2B, structurallimitations of the automated mobile paint robot may limit the paintrobot's ability to paint at least a portion of the wall adjacent theceiling and the floor. In the embodiment shown in FIGS. 1A, 1B, 2A, and2B, for example, a fixed sprayer 156 that is oriented such that the fanof the sprayer is substantially perpendicular (e.g., perpendicular) tothe wall surface may be unable to reach the very top (e.g., adjacent theceiling) and/or very bottom (adjacent the floor) portions of the wall.In some embodiments, such a limitation may result in a painted wall thathas unpainted gaps between: (1) an upper limit of the paint sprayer'sreach and the ceiling; and/or (2) a lower limit of the paint sprayer'sreach and the floor.

In still other embodiments, a paint robot having a sprayer that issubstantially fixed in an orientation in which the spray fan isperpendicular to the wall surface may be ineffective at paintingportions of a wall that are not substantially flat (e.g., flat). Theseportions may include one or more protrusions and/or recesses such as,for example: (1) a chair rail or other suitable piece of molding; (2)one or more window ledges and/or sills; (3) one or more exit signs; (4)one or more thermostats; (5) etc. As such, it may be desirable toincorporate an articulating spray head (e.g., a pivoting sprayer) intoan automated mobile painting system (e.g., such as the paint robot shownin FIGS. 1A, 1B, 2A, and 2B) in order to, for example, paint the upperand lower portions of the wall by angling the paint sprayer to paintover and/or under the various protrusions which may exist on the wall asdiscussed above.

FIG. 6 depicts a pivoting spray head according to a particularembodiment. As may be understood from FIG. 6 , the pivoting sprayer maybe configured to angle upwards or downwards with at least about a180-degree range of motion. For example, in a particular embodiment, thepivoting spray head is configured to angle upwards at least about 90degrees (e.g., 90 degrees) and downwards at least about 90 degrees(e.g., 90 degrees) from a position in which the pivoting spray head issubstantially perpendicular to a surface being sprayed (e.g., a wall).

In particular embodiments, the pivoting spray head comprises a worm geardrive assembly that is configured to articulate the pivoting spray headto a desired angle. In some embodiments, the worm gear drive assembly isconfigured to articulate the spray head of a rate of at least about 60RPM. In various embodiments, a computer controller is configured tooperate the worm gear drive assemble to adjust the angle of the pivotingspray head relative to the paint robot (e.g., or wall). In still otherembodiments, the pivoting spray head comprises any other suitablemechanism for adjusting an angle of the pivoting spray head (e.g.,stepper motor, etc.).

In various embodiments, a computer controller is configured toprogrammatically adjust an angle of the pivoting spray head such thatthe pivoting spray head is configured to paint floors, ceilings, overand under protrusions, etc. In some embodiments, the computer controlleris configured to cause the pivoting spray head to oscillate whilepainting in order to apply a texture to a painted surface.

In particular embodiments, movement of the automated mobile paint robotis achieved using one or more wheels disposed adjacent the mobile paintrobot's base. As may be understood in light of this disclosure, inparticular embodiments, a high accuracy of movement of the mobile paintrobot may be required, for example, to ensure that the paint robot hastravelled an appropriate distance between painting vertical swaths suchthat adjacent vertical swaths sufficiently overlap to result in aconsistent application of paint over the entire wall.

In some embodiments of a robotic wheel base, the base relies on skippingand/or slipping of one or more of the wheels used to support the baseadjacent a support surface. For example, treads and skid-steers may relyon skidding, while other driving mechanisms such as the use ofOmni-wheels or Mecanum wheels bases may rely on slippage. In variousembodiments, such drive bases that rely on slipping and/or skidding maybe unreliable for accurately mapping a surface over which the robot baseis driving (e.g., via one or more dead reckoning techniques).

In particular, floor mapping based on the movement of the robotic basemay require, for example, a constant flow of data coming from the wheelsto calculate the robot's position, speed, and distance traveled. Varioussystems may utilize one or more encoders on at least one of the one ormore wheels in order to attempt to measure such data. One or moreencoders on a slipping or skidding wheel may result in one or morebreaks in a code and/or data stream as the wheel stops turning in askid. Drive bases that rely on skipping and/or sliding may also haveother limitations such as, for example: (1) causing damage to floorsurfaces; (2) pulling and/or fraying carpeted surface; (3) gettingtarps, drop cloths, and other materials caught up in the robotic base'sdrive mechanism.

Certain types of wheels that rely on slipping may have otherlimitations. Omni and Mecanum wheels may, for example, move atdisproportional rates depending on an angle at which they are mounted.As such, the use of encoders with such wheels may result in aninaccurate floor mapping. Various embodiments of a robotic base thataddresses one or more issues related to slipping and/or skidding whilemaintaining a center of rotation of the robotic base about its centerare discussed more fully below.

MORE DETAILED DISCUSSION

Mobile Paint Robot

FIGS. 1A and 1B depict an autonomous mobile paint robot 100 according toa particular embodiment. In the embodiment shown in this figure, theautonomous mobile paint robot 100 comprises: (1) a base portion 110; (2)a paint caddy assembly 130; and (3) a paint sprayer support system 150.These features will be discussed more fully below.

Base Portion

As may be understood from FIGS. 1A and 1B, the autonomous mobile paintrobot 100 comprises a substantially rectangular (e.g., rectangular) baseportion 110 that comprises a plurality of wheels 112 (e.g., four wheelsin the embodiment shown in FIGS. 1A and 1B). In various embodiments, theplurality of wheels are configured to support the autonomous mobilepaint robot 100 adjacent a support surface (e.g., the ground, a suitableflooring surface within a building, etc.).

FIG. 3-5 depict a robotic driving base 210 according to yet anotherembodiment. In particular embodiments, the robotic base depicted inFIGS. 3-5 is configured to provide a stable platform for the autonomouspaint robot shown in FIGS. 1 and 2 (e.g., or any other suitable wheeledvehicle), while providing a center of rotation at the base's center. Inparticular embodiments, the robotic base shown in FIG. 3-5 issubstantially symmetrical, configured to move in both directions, andfurther configured to follow along complex wall surfaces (e.g., in orderto facilitate application of paint by the paint robot by maintaining aconsistent distance from the wall). In various embodiments, the roboticbase may, for example, be configured to agilely navigate along a wallwhile avoiding any protrusions, accounting for any cavities, etc.

In the embodiment shown in these Figures, the base portion roboticdriving base 210 is substantially rectangular (e.g., has a substantiallyrectangular frame) and comprises four stability wheels 212A, 212B, 212C,212D disposed adjacent an outer portion of the frame. As may beunderstood from FIG. 3 , the four stability wheels 212A, 212B, 212C,212D are configured to provide balance and stability to the roboticbase. The four stability wheels 212A, 212B, 212C, 212D are mounted tothe robotic frame in respective, fixed positions. In particularembodiments, the four stability wheels 212A, 212B, 212C, 212D arefree-spinning and configured to provide support to the robotic basewhile enabling the robotic base to move forward and backwards, and torotate to the right or to the left.

In the embodiment shown in this figure, the four stability wheelscomprise Omni wheels (e.g., one or more poly wheels) each comprising oneor more discs disposed about its circumference which are perpendicularto the turning direction of the respective wheel.

In still other embodiments, the four stability wheels 212A, 212B, 212C,212D may comprise any other suitable type of wheel (e.g., one or morecasters, one or more standard wheels, one or more Omni wheels etc.). Inthe embodiment shown in these figures, the four stability wheels 212A,212B, 212C, 212D comprise four wheels. It should be understood that inother embodiments, the four stability wheels 212A, 212B, 212C, 212D(e.g., the one or more stability wheels) may comprise any other suitablenumber of wheels and/or treads for supporting the robotic base andproviding stability to the robotic base.

As may be understood from FIGS. 3-5 , the robotic driving base roboticdriving base 210 further comprises a first driving wheel 214A and asecond driving wheel 214B. In the embodiment shown in these figures, thefirst and second driving wheels 214A, 214B comprise treaded wheels. Inparticular embodiments, the axis of rotation of the first driving wheel214A is substantially co-linear (e.g., collinear) with the axis ofrotation of the second driving wheel. In further embodiments, the axesof rotation of the first and second driving wheels extend through acenter of the robotic base (e.g., a center of mass, a center ofrotation, a physical center, etc.). In the embodiment shown in thisfigure, the center of rotation of the robotic base corresponds to acenter of the robotic base, and the first and second driving wheels214A, 214B are spaced apart from the center of rotation of the base(e.g., equally spaced apart from). As such, the robotic base isconfigured turn about its center of rotation with substantiallyzero-turn radius (e.g., zero turn-radius).

In particular embodiments, each of the first and second driving wheels214A, 214B comprises an independent suspension. In various embodiments,the independent suspensions may be configured to enable the robotic baseto traverse rough surfaces while maintaining a stable platform.

In some embodiments, the autonomous mobile paint robot 100 comprises adistributed controller (e.g., computer controller) configured to controloperation of one or more motors for powering operation of the first andsecond driving wheels 214A, 214B. In some embodiments, each respectivewheel of the first and second driving wheels 214A, 214B is controlled bya respective distributed controller. In various embodiments, eachdistributed controller is configured to cause the one or more motors tooperate each respective wheel of the first and second driving wheels214A, 214B cause the autonomous mobile paint robot 100 to roll acrossthe support surface (e.g., in any suitable direction). As may beunderstood by one skilled in the art, the distributed controllerarrangement for the first and second driving wheels 214A, 214B mayenable the system (e.g., a master control system) to operate each of theplurality of wheels independently at one or more different velocities,one or more different accelerations, and/or one or more differentdirections.

In various embodiments, each of the first and second driving wheels214A, 214B comprise an encoder configured to measure movement of each ofthe first and second driving wheels 214A, 214B. As such, the system maybe configured to accurately map the movement of the robotic base throughdata received from the encoders. The system may, for example, use one ormore dead reckoning techniques based on speed and position data receivedfrom the first and second driving wheels 214A, 214B in order to map apath traveled by the robotic base. As such, the robotic base may beconfigured to follow a particular path or along a wall in one directionand then reverse direction to follow the same bath back to an initialstating position.

In some embodiments, the robotic base comprises one or more IR sensors,laser scanners, LIDAR devices, or other suitable distance scanners formeasuring a distance between the robotic base and a vertical surface(e.g., a wall). In various embodiments, the system is configured to usedata received from one or more sensors to maintain the robotic base afixed distance from the wall as the robotic base traverses along thewall.

In particular embodiments, the first and second driving wheels 214A,214B are oriented substantially perpendicularly to the direction ofpaint spray by the paint robot. In this way, the robotic base isconfigured to drive forward or backward along the wall in betweenspraying of vertical swaths by the autonomous paint robot.

In particular embodiments, as may be understood from FIG. 3 , therobotic driving base 210 comprises: (1) a substantially rectangular(e.g., rectangular) base frame 250; (2) a plurality of stability wheels212A, 212B, 212C, 212D operably coupled to the base frame 250; and (3) afirst driving wheel 214A and a second driving wheel 214B disposed atleast partially within the base frame 250. As shown in FIG. 3 , the baseframe 250 comprises a front base frame member 252 (e.g., which mayinclude a substantially rigid frame member), a 226 and a second sidebase frame member 258 that extend perpendicular from opposing ends ofthe front base frame member 252, and a rear base frame member 254 thatis substantially parallel to the front base frame member 252. As may beunderstood from FIG. 3 , the front base frame member 252, the rear baseframe member 254, the first side base frame member 256 and the secondside base frame member 258 form the base frame 250.

As further shown in FIG. 3 , each of the plurality of stability wheels212A, 212B, 212C, 212D is operably coupled to a respective stabilitywheel mount 222. Each respective stability wheel mount 222 extendsperpendicularly from each of the first side base frame member 256 andthe second side base frame member 258 adjacent the front base framemember 252 or the rear base frame member 254. As may be understood fromthis Figure, the position of each of the plurality of stability wheels212A, 212B, 212C, 212D is such that each respective stability wheel isspaced apart from the axis of rotation of the first and second drivingwheels 214A, 214B. In various embodiments, this configuration of drivingand stability wheels may provide stability to any suitable robot that isutilizing the robotic base (e.g., such as the robot shown in FIGS. 1 and2 . As may be understood from FIGS. 1 and 2 (e.g., 1A, 1B, 2A, and 2B),when in a fully extended position, the paint robot may be relativelytall while still having a compact (e.g., small profile) base portion. Assuch the distance between the plurality of support wheels and the axisof rotation of the driving wheels may provide a stable support basewhich may, for example, reduce a likelihood of tipping by the robot.

In some embodiments, the first driving wheel 214A is operably coupled toa first driving wheel drive motor 231, which may, for example, beconfigured to drive the first driving wheel 214A (e.g., throughoperation of the first driving wheel drive motor 231). In someembodiments, the first driving wheel drive motor 231 is operably coupledto a first motor controller 233, which may for example, be configured tocontrol operation of the first driving wheel drive motor 231 in orderto, for example: control a rotation speed of the first driving wheel214A, control a rotation direction of the first driving wheel 214A, etc.Similarly, in various embodiments, the second driving wheel 214B isoperably coupled to a second driving wheel drive motor 232, which may,for example, be configured to drive the second driving wheel 214B (e.g.,through operation of the second driving wheel drive motor 232). In someembodiments, the second driving wheel drive motor 232 is operablycoupled to a second motor controller 234, which may for example, beconfigured to control operation of the second driving wheel drive motor232 in order to, for example: control a rotation speed of the seconddriving wheel 214B, control a rotation direction of the second drivingwheel 214B, etc.

In some embodiments, each of the plurality of stability wheels 212A,212B, 212C, 212D comprise an encoder configured to measure movement ofeach of plurality of stability wheels 212A, 212B, 212C, 212D. As such,the system may be configured to accurately map the movement of therobotic base through data received from the encoders based on motion ofplurality of stability wheels 212A, 212B, 212C, 212D

In still other embodiments, the robotic driving base 210 comprises asuspension mechanism 265. In various embodiments, the suspensionmechanism 265 comprises at least one or more first driving wheel supportmembers 266, 268 and one or more second driving wheel support members262, 264. In the embodiments shown in these figures, the one or morefirst driving wheel support members 266, 268 is operably coupled to thefirst driving wheel 214A. In some embodiments, the one or more seconddriving wheel support members 262, 264 is operably coupled to the seconddriving wheel 214B. In particular embodiments, the suspension mechanism265 is configured to enable each of the first and second driving wheels214A and 214B to suspend independently from the base frame 250. In thisway, the first and second driving wheels 214A and 214B may be configuredto move in a vertical direction independently from the plurality ofsupport wheels. In various embodiments, this may enable the robotic baseto travel over rougher surfaces, bumps, etc., while still maintaining arobot supported by the robotic base in a vertically upright position(e.g., such that the robotic base can still enable a paint robot, forexample, to a paint a substantially vertical switch of paint).

In various embodiments, the base portion 110 further comprises at leastone computer controller 114, configured to control one or more aspectsof the operations of the autonomous mobile paint robot 100 describedherein. Various features of the control systems of the autonomous mobilepaint robot 100 are described more fully below.

Paint Caddy Assembly

As shown in FIGS. 1A and 1B, the autonomous mobile paint robot 100further comprises a paint caddy assembly 130. As may be understood fromthis figure, the paint caddy assembly 130 comprises at least one paintcontainer 132 (e.g., a bucket or other suitable housing for storingpaint or other liquid). In some embodiments, the paint caddy assembly130 comprises a pump configured to draw paint stored in the at least onepaint container 132 and deliver the paint at pressure through a spraytip 156, such as the spray tip 156 discussed more fully below.

Paint Sprayer Support System

In particular embodiments, the paint robot 100 further comprises a paintsprayer support system 150 that comprises: (1) a first vertical support152; (2) a second vertical support 154; and (3) a pivoting spray head156. In particular embodiments, the first and second vertical supports152, 154 are configured to slide relative to one another via a suitablejoint (e.g., a prismatic joint) in a substantially telescoping (e.g.,telescoping) manner. FIGS. 2A and 2B show the paint robot 100 with thesecond vertical support 154 in an extended position relative to thefirst vertical support 152. FIGS. 2A and 2B further depict the spray tippositioned at an upper end of the second vertical support. As may beunderstood from this figure, in various embodiments, the spray tip isconfigured to move vertically along the first and second verticalsupports 152, 154 (e.g., via a second prismatic or other suitable joint,along a suitable track, etc.). In various embodiments, the paint sprayersupport system comprises one or more motors configured to cause: (1) thesecond vertical support 154 to slide relative to the first verticalsupport 152; and (2) the spray tip 156 to slide vertically relative toboth the first and second vertical supports 152, 154. In a particularembodiment, the system comprises two motors, or any other suitablenumber of motors configured to cooperate to cause the first and secondvertical supports 152, 154 or other components of the paint robot tomove relative to one another to enable the spray tip 156 (e.g., or spraytips) to spray a complete vertical swath of a wall (e.g., from floor toceiling or from ceiling to floor).

In particular embodiments, the vertical support system comprises one ormore linear motion carriages. In some embodiments, the vertical supportsystem comprises any suitable number of linear motion carriages. Inparticular embodiments, the one or more linear motion carriages comprisethe first and second vertical supports first vertical support, secondvertical support. In some embodiments, each of the one or more linearmotion carriages may be powered internally to each respective carriage(e.g., via one or more motorized wheels and/or gears that ride along oneor more rails and are configured to propel each respective linear motioncarriage). In still other embodiments, each of the one or more linearmotion carriages may comprise any suitable combination of lead screws,cables, ropes, chains, gears, etc. affixed to each respective carriage).

In various embodiments, as may be understood from FIGS. 1A, 1B, 2A, and2B, the spray tip 156 is configured to slide from a first position at abase of the paint robot 100 (e.g., at floor level) to a second positionat an upper portion of the second vertical support 154. In this way, thespray tip 156, in any embodiment described herein, may be configured topaint a vertical swath of paint along this vertical path between thefirst and second positions. In particular embodiments, the spray tip 156comprises a pressure activated valve, which may, for example, beconfigured to prevent leakage of paint of other liquid from the spraytip and providing a minimum pressure level of fluid to the spray tiporifice.

In particular embodiments, the spray tip 156 is disposed in a trackdefined by the second vertical support 154. In particular embodiments,the computer controller is configured to coordinate a velocity at whichthe second vertical support slides relative to the first verticalsupport 152 with the velocity at which the spray tip 156 slides relativeto the second vertical support 154 such that the combined velocities aresubstantially constant (e.g., which may, for example, result in a moreeven application of paint along the vertical swath).

In various embodiments, the computer controller may be configured torepeat the steps above substantially in reverse (e.g., in order to painta vertical swath that begins at the ceiling and ends at the floor, fromthe top of the wall to the bottom). The computer controller may then beconfigured to repeat the painting of upwards and downwards paintedadjacent vertical swaths until the entire length (e.g., width) of thewall has been painted.

As may be understood from FIGS. 1A, 1B, 2A, and 2B, structurallimitations of the automated mobile paint robot may limit the paintrobot's ability to paint at least a portion of the wall adjacent theceiling and the floor. In the embodiment shown in FIGS. 1A, 1B, 2A, and2B, for example, a fixed sprayer 156 that is oriented such that the fanof the sprayer is substantially perpendicular (e.g., perpendicular) tothe wall surface may be unable to reach the very top (e.g., adjacent theceiling) and/or very bottom (adjacent the floor) portions of the wall.In some embodiments, such a limitation may result in a painted wall thathas unpainted gaps between: (1) an upper limit of the paint sprayer'sreach and the ceiling; and/or (2) a lower limit of the paint sprayer'sreach and the floor.

In still other embodiments, a paint robot having a sprayer that issubstantially fixed in an orientation in which the spray fan isperpendicular to the wall surface may be ineffective at paintingportions of a wall that are not substantially flat (e.g., flat). Theseportions may include one or more protrusions and/or recesses such as,for example: (1) a chair rail or other suitable piece of molding; (2)one or more window ledges and/or sills; (3) one or more exit signs; (4)one or more thermostats; (5) etc. As such, it may be desirable toincorporate an articulating spray head (e.g., a pivoting sprayer) intoan automated mobile painting system (e.g., such as the paint robot shownin FIGS. 1A, 1B, 2A, and 2B) in order to, for example, paint the upperand lower portions of the wall by angling the paint sprayer to paintover and/or under the various protrusions which may exist on the wall asdiscussed above.

FIG. 6 depicts a pivoting spray head according to a particularembodiment. As may be understood from FIG. 6 , the pivoting sprayer maybe configured to angle upwards or downwards with at least about a180-degree range of motion. For example, in a particular embodiment, thepivoting spray head is configured to angle upwards at least about 90degrees (e.g., 90 degrees) and downwards at least about 90 degrees(e.g., 90 degrees) from a position in which the pivoting spray head issubstantially perpendicular to a surface being sprayed (e.g., a wall).

In particular embodiments, the pivoting spray head comprises a worm geardrive assembly that is configured to articulate the pivoting spray headto a desired angle. In some embodiments, the worm gear drive assembly isconfigured to articulate the spray head of a rate of at least about 60RPM. In various embodiments, a computer controller is configured tooperate the worm gear drive assemble to adjust the angle of the pivotingspray head relative to the paint robot (e.g., or wall). In still otherembodiments, the pivoting spray head comprises any other suitablemechanism for adjusting an angle of the pivoting spray head (e.g.,stepper motor, etc.).

In various embodiments, a computer controller is configured toprogrammatically adjust an angle of the pivoting spray head such thatthe pivoting spray head is configured to paint floors, ceilings, overand under protrusions, etc. In some embodiments, the computer controlleris configured to cause the pivoting spray head to oscillate whilepainting in order to apply a texture to a painted surface.

In various embodiments, as shown in FIG. 6 , a pivoting spray tipassembly 656 comprises a pivoting spray tip mount 610 configured tosupport a spray tip 156 that is configured to pivot about a pivotingspray tip pivot axis 615 defined by the pivoting spray tip mount 610. Invarious embodiments the pivoting spray tip mount 610 comprises a firstpivoting spray tip support 612 and a second pivoting spray tip support614 that each extend perpendicularly from the pivoting spray tip mount610. In the embodiment shown in these figures the first pivoting spraytip support 612 is parallel to the second pivoting spray tip support614. In some embodiments, the first pivoting spray tip support 612 andthe second pivoting spray tip support 614 support opposing portions ofthe spray tip 156 and support the spray tip 156 adjacent the pivotingspray tip pivot axis 615. In some embodiments the pivoting spray tippivot axis 615 comprises a suitable rod or other mechanism or mechanismsthat extend(s) at least partially from each of the first pivoting spraytip support 612 and the second pivoting spray tip support 614. In someembodiments, the 665 further comprise a pivoting spray tip driveassembly 622, which may, for example, comprise a worm gear driveassembly (e.g., a or other suitable motor or drive assembly orcombination of motors or drive assemblies) that is/are configured toarticulate the pivoting spray head to a desired angle. In someembodiments, the worm gear drive assembly is configured to articulatethe spray head of a rate of at least about 60 RPM. In still otherembodiments, the pivoting spray tip assembly 656 comprises a pivotingspray tip controller assembly 620, which may include any suitablecontroller described herein.

FIG. 7 depicts an additional side view of a pivoting spray head (e.g.,wrist) affixed to a paint robot's vertical support 154 (e.g., tower) viaa first linear motion carriage support 710 and a second linear motioncarriage support 720. In various embodiments, the pivoting spray tipmount 610 is configured to slide vertically relative to the verticalsupport 154 via a linear motion carriage 700. In other embodiments, thepivoting spray tip mount 610 may be mounted to the vertical supportusing any other suitable mechanism configured to enable vertical slidingof the pivoting spray tip mount 610 relative to the vertical support.

Vertical Swath Painting with Pivoting Spray Head

In various embodiments, as may be understood from FIG. 9 , when paintingalong a particular vertical swath, the paint robot (e.g., a computercontroller) may be configured to angle the pivoting spray head 156upwards or downwards as necessary while painting a particular verticalswath in order to ensure that paint is applied to the upper and lowerportion of the wall. The computer controller may, for example, angle thepivoting spray head by operating one or more of the motors and/or gearsthat are configured to adjust the angle of the spray head (e.g., such asthose discussed above).

For example, when painting a vertical swath from floor to ceiling, withthe pivoting spray head 156 beginning a Position A, the system may beconfigured to: (1) cause the pivoting spray head 156 to travelvertically along a linear path 40 through a combination of sliding ofthe second vertical support 154 and spray tip 156 as discussed above;and (2) cause the worm gear drive assembly (e.g., or other suitablemechanism) to angle the pivoting spray head 156 upward at any suitablepoint as the pivoting spray head 156 travels between Position A andPosition C such that the pivoting spray head 156 forms Angle B with thesurface of the wall.

In particular embodiments, the computer controller is configured tocause the pivoting spray head 156 to form Angle B with the wall afterthe pivoting spray head 156 has reached position C. In otherembodiments, the computer controller is configured to begin causing thepivoting spray head 156 to angle upwards prior to the pivoting sprayhead 156 reaching Position C (e.g., at any suitable Position B betweenPosition A and Position C). In such embodiments, the computer controllermay be configured to cause the pivoting spray head 156 to reach Angle Bwith the wall at the time at which the pivoting spray head 156 reachesPosition C. In still other embodiments, the computer controller isconfigured to angle the pivoting spray head 156 upwards to Angle B priorto the pivoting spray head 156 reaching Position C.

In any embodiment described herein, the system is configured tocoordinate each of: (1) velocity (e.g., and acceleration) at which thesecond vertical support slides relative to the first vertical support152; (2) the velocity (e.g., and acceleration) at which the spray tip156 slides relative to the second vertical support 154; and (3) theangular velocity (e.g., and angular acceleration) at which the computercontroller causes the pivoting spray head 156 to angle upwards ordownwards such that the combined velocities are substantiallyconsistent.

In particular embodiments, when painting a vertical swath from floor toceiling, the pivoting spray head 156 may begin in an orientation inwhich the pivoting spray head 156 is positioned at Angle A with respectto the wall as shown in FIG. 9 . In such embodiments, the computercontroller may be further configured to cause the worm gear driveassembly (e.g., or other suitable mechanism) to angle the pivoting sprayhead 156 upward as the pivoting spray head 156 travels between PositionA and Position C such that the pivoting spray head 156 articulates fromAngle A to Angle B in any suitable manner between Position A andPosition C. For example, in particular embodiments, the pivoting sprayhead 156 may: (1) articulate from Angle A to an angle that isperpendicular to the wall as the pivoting spray head travels verticallyalong the linear path 40; (2) remain in an orientation that isperpendicular to the wall (e.g., as shown in Position B) for at least aportion of its travel along the linear path 40; and (3) articulate fromthe angle that is perpendicular to the wall to Angle B at least as thepivoting spray head 156 arrives at Position C.

In other embodiments, the pivoting spray head 156 may begin in aposition in which the pivoting spray head 156 is substantiallyperpendicular (e.g., perpendicular) to the wall at the beginning of thevertical swath (e.g., while at Position A).

FIG. 7 depicts an additional side view of a pivoting spray head (e.g.,wrist) affixed to a paint robot's vertical support (e.g., tower). FIG. 6depicts exemplary operations which may be performed by a computercontroller or similar system in order to utilize the pivoting spray headin the application of paint. In particular embodiments, a computercontroller may be configured to perform one or more operations shown inFIG. 8 . For example, the computer controller (e.g., or other system)may begin by setting a minimum and maximum painting height. The systemmay, for example, determine minimum and maximum height based on a heightof a ceiling for the wall being painted. In particular embodiments, thesystem may be configured to determine the minimum and maximum heightsusing one or more imaging devices, one or more proximity sensors, etc.

In various embodiments, the system is then configured to measure adistance from the sprayer to the wall being painted. The system may, forexample, use any suitable range-finger, IR sensor, or other suitabledistance sensor to determine the distance. In various embodiments, thesystem is then configured to determine the pitch angle described abovebased on the offset from the wall, the ceiling height, and knowndimensions of the sprayer and/or vertical supports.

In various embodiments, the system is configured to split the verticalmotion of the sprayer into at least three travel periods: (1) a firstacceleration period; (2) a second cruising period; and (3) a thirddeceleration period. During the first acceleration period, the system(e.g., controller) is configured to cause the spray head to acceleratethe sprayer to the desired speed along the vertical path (e.g., througha combination of linear movement of at least one of the second verticalsupport and spray head along the second vertical support) and cause thespray head to tilt from a minimum angle (e.g., Angle A) to an angleperpendicular to the wall. During the second cruising period, thecontroller may be configured to cause the spray head to travel along thevertical path at a constant velocity (e.g., through a combination oflinear movement of at least one of the second vertical support and sprayhead along the second vertical support) with the pivoting spray headmaintaining a fixed angle perpendicular to the wall. During the thirddeceleration period, the controller is configured to cause the sprayhead to decelerate the sprayer from the desired speed along the verticalpath to a stop (e.g., through a combination of linear movement of atleast one of the second vertical support and spray head along the secondvertical support) and cause the spray head to tilt from an angleperpendicular to the wall to a maximum angle (e.g., Angle B). In anyembodiment described herein, the controller is configured to cause thesprayer to spray a fan of paint along a vertical section of wall at asubstantially constant (e.g., constant) velocity (e.g., through anysuitable combination of coordination of linear and angular accelerationand velocity of the spray head described herein).

When painting a vertical swath from ceiling to floor, the system may beconfigured to perform similar steps to those described above in reversesuch that the computer controller is configured to: (1) cause thepivoting spray head 156 to travel vertically along the linear path 40through a combination of sliding of the second vertical support 154 andspray tip 156 as discussed above from Position C to Position A; and (2)cause the worm gear drive assembly (e.g., or other suitable mechanism)to angle the pivoting spray head 156 downward at any suitable point asthe pivoting spray head 156 travels between Position C and Position Asuch that the pivoting spray head 156 forms Angle A with the surface ofthe wall.

In still other embodiments, a paint robot may be configured to angle thepivoting spray head 156 upwards and/or downwards as necessary to paintany of the various protrusions and/or recesses described herein as thepaint robot is painting a particular vertical swath. In suchembodiments, the computer controller may be configured to manipulate anorientation of the pivoting spray head in any suitable manner as thepivoting spray head travels along the linear path 40 in order tosufficiently paint such protrusions and/or recesses.

Exemplary Technical Platforms

As will be appreciated by one skilled in the relevant field, variousaspects of the present invention may be, for example, embodied as acomputer system, a method, or a computer program product. Accordingly,various embodiments may take the form of an entirely hardwareembodiment, an entirely software embodiment, or an embodiment combiningsoftware and hardware aspects. Furthermore, particular embodiments maytake the form of a computer program product stored on acomputer-readable storage medium having computer-readable instructions(e.g., software) embodied in the storage medium. Various embodiments maytake the form of web-implemented computer software. Any suitablecomputer-readable storage medium may be utilized including, for example,hard disks, compact disks, DVDs, optical storage devices, and/ormagnetic storage devices.

Various embodiments are described below with reference to block diagramsand flowchart illustrations of methods, apparatuses (e.g., systems), andcomputer program products. It should be understood that each block ofthe block diagrams and flowchart illustrations, and combinations ofblocks in the block diagrams and flowchart illustrations, respectively,can be implemented by a computer executing computer programinstructions. These computer program instructions may be loaded onto ageneral purpose computer, special purpose computer, or otherprogrammable data processing apparatus to produce a machine, such thatthe instructions which execute on the computer or other programmabledata processing apparatus to create means for implementing the functionsspecified in the flowchart block or blocks.

These computer program instructions may also be stored in acomputer-readable memory that can direct a computer or otherprogrammable data processing apparatus to function in a particularmanner such that the instructions stored in the computer-readable memoryproduce an article of manufacture that is configured for implementingthe function specified in the flowchart block or blocks. The computerprogram instructions may also be loaded onto a computer or otherprogrammable data processing apparatus to cause a series of operationalsteps to be performed on the computer or other programmable apparatus toproduce a computer implemented process such that the instructions thatexecute on the computer or other programmable apparatus provide stepsfor implementing the functions specified in the flowchart block orblocks.

Accordingly, blocks of the block diagrams and flowchart illustrationssupport combinations of mechanisms for performing the specifiedfunctions, combinations of steps for performing the specified functions,and program instructions for performing the specified functions. Itshould also be understood that each block of the block diagrams andflowchart illustrations, and combinations of blocks in the blockdiagrams and flowchart illustrations, can be implemented by specialpurpose hardware-based computer systems that perform the specifiedfunctions or steps, or combinations of special purpose hardware andother hardware executing appropriate computer instructions.

Example System Architecture

FIG. 10 is a block diagram of a robot control system 300 according to aparticular embodiment. In some embodiments, the robot control system 300is configured to coordinate the planning and execution of one or moreactions by an autonomous mobile paint robot 100 (e.g., or other robotsuch as any suitable robot that includes any suitable robotic basedescribed herein) in order to complete the painting of a particularsurface, room, or other function, etc.

As may be understood from FIG. 10 , the robot control system 300includes one or more computer networks 315, an autonomous mobile paintrobot 100 (e.g., or other robot having a robotic driving base), a robotpositioning server 310, a vision system and planning server 320, one ormore remote computing devices 330 (e.g., such as a desktop computer,laptop computer, tablet computer, smartphone, etc.), and one or moredatabases 340. In particular embodiments, the one or more computernetworks 315 facilitate communication between the autonomous mobilepaint robot 100, one or more remote computing devices 330 (e.g., adesktop computer, laptop computer, tablet computer, etc.), and one ormore databases 340.

The one or more computer networks 315 may include any of a variety oftypes of wired or wireless computer networks such as the Internet, aprivate intranet, a public switch telephone network (PSTN), or any othertype of network. The communication link between the paint robotpositioning server 310 and database 340 may be, for example, implementedvia a Local Area Network (LAN) or via the Internet.

FIG. 11 illustrates a diagrammatic representation of a computer 1100that can be used within the robot control system 300, for example, as aclient computer (e.g., one or more remote computing devices 130 shown inFIG. 10 ), or as a server computer (e.g., robot positioning server 310shown in FIG. 10 ), or one or more computer controllers on theautonomous mobile paint robot 100 itself (e.g., such as one of the oneor more distributed controllers for controlling one or more motors topower the plurality of wheels 112, the paint sprayer, any driving wheelsdescribed herein, etc.). In particular embodiments, the computer 1100may be suitable for use as a computer within the context of the robotcontrol system 300 that is configured to receive data input (e.g.,movement information from one or more wheel encoders, generate a virtualroom plan, generate a queue or stack of moves for the paint robot 100 toperform, and operate the paint robot 100 or robotic base to performthose moves (e.g., by causing movement of one or more vertical supportsthrough the operation of one or more motors, etc).

In particular embodiments, the computer 1100 may be connected (e.g.,networked) to other computers in a LAN, an intranet, an extranet, and/orthe Internet. As noted above, the computer 1100 may operate in thecapacity of a server or a client computer in a client-server networkenvironment, or as a peer computer in a peer-to-peer (or distributed)network environment. The Computer 1100 may be a personal computer (PC),a tablet PC, a set-top box (STB), a Personal Digital Assistant (PDA), acellular telephone, a web appliance, a server, a network router, aswitch or bridge, or any other computer capable of executing a set ofinstructions (sequential or otherwise) that specify actions to be takenby that computer. Further, while only a single computer is illustrated,the term “computer” shall also be taken to include any collection ofcomputers that individually or jointly execute a set (or multiple sets)of instructions to perform any one or more of the methodologiesdiscussed herein.

An exemplary computer 1100 includes a processing device 1102, a mainmemory 1104 (e.g., read-only memory (ROM), flash memory, dynamic randomaccess memory (DRAM) such as synchronous DRAM (SDRAM) or Rambus DRAM(RDRAM), etc.), static memory 1106 (e.g., flash memory, static randomaccess memory (SRAM), etc.), and a data storage device 1118, whichcommunicate with each other via a bus 1132.

The processing device 1102 represents one or more general-purposeprocessing devices such as a microprocessor, a central processing unit,or the like. More particularly, the processing device 202 may be acomplex instruction set computing (CISC) microprocessor, reducedinstruction set computing (RISC) microprocessor, very long instructionword (VLIW) microprocessor, or processor implementing other instructionsets, or processors implementing a combination of instruction sets. Theprocessing device 1102 may also be one or more special-purposeprocessing devices such as an application specific integrated circuit(ASIC), a field programmable gate array (FPGA), a digital signalprocessor (DSP), network processor, or the like. The processing device1102 may be configured to execute processing logic 1126 for performingvarious operations and steps discussed herein. In various embodiments,the processing device 1102 (e.g., or processing devices) may be embodiedas any suitable computer processor, controller, etc. described herein.

The computer 1100 may further include a network interface device 1108.The computer 1100 also may include a video display unit 1110 (e.g., aliquid crystal display (LCD) or a cathode ray tube (CRT)), analphanumeric input device 1112 (e.g., a keyboard), a cursor controldevice 1114 (e.g., a mouse), and a signal generation device 1116 (e.g.,a speaker).

The data storage device 1118 may include a non-transitorycomputer-accessible storage medium 1130 (also known as a non-transitorycomputer-readable storage medium or a non-transitory computer-readablemedium) on which is stored one or more sets of instructions (e.g.,software instructions 1122) embodying any one or more of themethodologies or functions described herein. The software instructions1122 may also reside, completely or at least partially, within mainmemory 1104 and/or within processing device 1102 during executionthereof by computer 1100—main memory 1104 and processing device 1102also constituting computer-accessible storage media. The softwareinstructions 1122 may further be transmitted or received over a network1115 via network interface device 1108.

While the computer-accessible storage medium 1130 is shown in anexemplary embodiment to be a single medium, the term“computer-accessible storage medium” should be understood to include asingle medium or multiple media (e.g., a centralized or distributeddatabase, and/or associated caches and servers) that store the one ormore sets of instructions. The term “computer-accessible storage medium”should also be understood to include any medium that is capable ofstoring, encoding or carrying a set of instructions for execution by thecomputer and that cause the computer to perform any one or more of themethodologies of the present invention. The term “computer-accessiblestorage medium” should accordingly be understood to include, but not belimited to, solid-state memories, optical and magnetic media, etc.

CONCLUSION

Many modifications and other embodiments of the invention will come tomind to one skilled in the art to which this invention pertains havingthe benefit of the teachings presented in the foregoing descriptions andthe associated drawings. Therefore, it is to be understood that theinvention is not to be limited to the specific embodiments disclosed andthat modifications and other embodiments are intended to be includedwithin the scope of the appended claims. For example, while the aboverobot is discussed particular in regard to paint, it should beunderstood that various other embodiments may be configured to apply anyother liquid to any other suitable surface using any of the techniquesdescribed herein. For example, it should be understood that otherembodiments may utilize any suitable technique described herein to applyany other suitable material (e.g., either singularly or additively).These other materials may include, for example, stucco, cement, gunite,one or more plastics, insulation, foam, or other suitable materials. Invarious other embodiments, one or more techniques described herein maybe utilized for the application of any other suitable material such as,for example, a solid material (e.g., a powder, sand, glitter, pelletssuch as BBs etc.), semi-solid material, a molten material, gaseousmaterial, plasma, textured material, solid suspended in a liquid, etc.The system may, for example be utilized to apply any material in anysuitable location regardless of a density, consistency, or otherproperty of the material.

In various embodiments, the system is configured to utilize the roboticdriving base 210 or any suitable technique herein to apply any suitablematerial under pressure (e.g., through an orifice, via a suitable mold,etc.). In particular embodiments, the system is configured to atomize amaterial for application. In other embodiments, the system is configuredto apply the material in its substantially natural state. In still otherembodiments, the system is configured to apply one or more materials ina suitable matrix. In some embodiments, the system is configured toutilize one or more techniques described herein in a suitable 3-Dprinting application (e.g., portable and/or large-scale 3-D printing).

Furthermore, any combination of any features may be utilized in thecontext of any specific embodiment. For example, although one or morefeatures may not be discussed in relation to one another, variousembodiments of a paint robot may utilize any feature of componentdescribed herein in any combination. Furthermore, although variousembodiments are described in the context of a paint robot, it should beunderstood that various features described may be implemented in anyother suitable context (e.g., gantry system, etc.) or for any otherconstruction robotics applications (e.g., in the context of a drywallmounting robot, or other autonomous construction robot). Althoughspecific terms are employed herein, they are used in a generic anddescriptive sense only and not for the purposes of limitation.

appended claims. For example, while the above robot is discussedparticular in regard to paint, it should be understood that variousother embodiments may be configured to apply any other liquid to anyother suitable surface using any of the techniques described herein. Forexample, it should be understood that other embodiments may utilize anysuitable technique described herein to apply any other suitable material(e.g., either singularly or additively). These other materials mayinclude, for example, stucco, cement, gunite, one or more plastics,insulation, foam, or other suitable materials. In various otherembodiments, one or more techniques described herein may be utilized forthe application of any other suitable material such as, for example, asolid material (e.g., a powder, sand, glitter, pellets such as BBsetc.), semi-solid material, a molten material, gaseous material, plasma,textured material, solid suspended in a liquid, etc. The system may, forexample be utilized to apply any material in any suitable locationregardless of a density, consistency, or other property of the material.

In various embodiments, the system is configured to utilize the roboticdriving base 210 or any suitable technique herein to apply any suitablematerial under pressure (e.g., through an orifice, via a suitable mold,etc.). In particular embodiments, the system is configured to atomize amaterial for application. In other embodiments, the system is configuredto apply the material in its substantially natural state. In still otherembodiments, the system is configured to apply one or more materials ina suitable matrix. In some embodiments, the system is configured toutilize one or more techniques described herein in a suitable 3-Dprinting application (e.g., portable and/or large-scale 3-D printing).

Furthermore, any combination of any features may be utilized in thecontext of any specific embodiment. For example, although one or morefeatures may not be discussed in relation to one another, variousembodiments of a paint robot may utilize any feature of componentdescribed herein in any combination. Furthermore, although variousembodiments are described in the context of a paint robot, it should beunderstood that various features described may be implemented in anyother suitable context (e.g., gantry system, etc.) or for any otherconstruction robotics applications (e.g., in the context of a drywallmounting robot, or other autonomous construction robot). Althoughspecific terms are employed herein, they are used in a generic anddescriptive sense only and not for the purposes of limitation.

What is claimed is:
 1. A zero turn-radius robotic base comprising: asubstantially rectangular base frame; a plurality of stability wheelsdisposed adjacent an outer face of the substantially rectangular baseframe; a first driving wheel disposed at least partially within thesubstantially rectangular frame; and a second driving wheel disposed atleast partially within the substantially rectangular frame and spacedapart from the first driving wheel, wherein: the first driving wheel isspaced apart from a center of rotation of the substantially rectangularbase frame and has a first axis of rotation that intersects the centerof rotation; the second driving wheel is spaced apart from the center ofrotation of the substantially rectangular base frame and has a secondaxis of rotation that intersects the center of rotation; and the firstaxis of rotation is substantially colinear with the second axis ofrotation.
 2. The zero turn-radius robotic base of claim 1, wherein thesubstantially rectangular base frame is configured to turn with azero-turn radius through coordinated operation of the first drive wheeland the second drive wheel.
 3. The zero turn-radius robotic base ofclaim 1, wherein the substantially rectangular base frame comprises: afront base frame member; a first side base frame member that extendsperpendicularly from the front base frame member from a first end of thefront base frame member; a second side base frame member that extendsperpendicularly from the front base frame member from a second end ofthe front base frame member and is parallel to the first side base framemember; and a rear base frame member that extends between respectiveends of the first side frame member and the second side base framemember and is parallel to the front base frame member.
 4. The zeroturn-radius robotic base of claim 3, wherein the first axis of rotationand the second axis of rotation are substantially parallel to the firstside base frame member and the second side base frame member.
 5. Thezero turn-radius robotic base of claim 4, wherein the plurality ofstability wheels comprise: a first stability wheel disposed on an outerface of the first side base frame member adjacent the front base framemember; a second stability wheel disposed on the outer face of the firstside base frame member adjacent the rear base frame member; a firststability wheel disposed on an outer face of the first side base framemember adjacent the front base frame member; and a second stabilitywheel disposed on the outer face of the first side base frame memberadjacent the rear base frame member.
 6. The zero turn-radius roboticbase of claim 5, wherein: the substantially rectangular base framecomprises a first stability wheel mount that extends perpendicularlyfrom the outer face of the first side base frame member; and the firststability wheel mount is configured to support the first stability wheeladjacent the outer face of the first side base frame member adjacent thefront base frame member.
 7. The zero turn-radius robotic base of claim5, wherein the first stability wheel, the second stability wheel, thethird stability wheel, and the fourth stability wheel are substantiallyfree spinning.
 8. The zero turn-radius robotic base of claim 7, whereinthe first stability wheel, the second stability wheel, the thirdstability wheel, and the fourth stability each comprise an omni wheelconfigured to move in all directions.
 9. The zero turn-radius roboticbase of claim 8, the zero turn-radius robotic base further comprising: afirst driving wheel drive motor operably coupled to the first drivingwheel; a first motor controller operably coupled to the first drivingwheel drive motor; a second driving wheel drive motor operably coupledto the second driving wheel; and a second motor controller operablycoupled to the second driving wheel drive motor, wherein: the firstmotor controller is configured to operate the first driving wheel drivemotor to drive rotation of the first driving wheel; and the second motorcontroller is configured to operate the second driving wheel drive motorto drive rotation of the second driving wheel.
 10. The zero turn-radiusrobotic base of claim 9, wherein: the zero turn-radius robotic basefurther comprises a suspension mechanism; each of the first drivingwheel and the second driving wheel are mounted via the suspensionmechanism such that the first driving wheel and the second driving wheelhave a suspension that is independent from each of the plurality ofsupport wheels.